//
//  CZBaseTableViewController.swift
//  微博08
//
//  Created by apple on 16/2/26.
//  Copyright © 2016年 itcast. All rights reserved.
//

import UIKit

class CZBaseTableViewController: UITableViewController {
    
    var userLogin = CZUserAccountViewModel.sharedInstance.userLogin
    
    // 当用户没有登录,使用自定义的界面,如果用户登录了就走父类的流程
    override func loadView() {
        userLogin ? super.loadView() : setupVistorView()
    }
    
    /// 设置访客视图
    func setupVistorView() {
        self.view = visitorView
        
        // 4.设置代理
        visitorView.vistorViewDelegate = self
        
        // 来判断是哪个控制器
        // CZHomeViewController.self 和 OC = [CZHomeViewController class]
        // is 判断一个对象是否是某类型
        // as 类型转换的
        if self is CZHomeViewController {
            visitorView.iconViewRotation()
        } else if (self is CZMessageViewController) {
            visitorView.setupVisitorView("visitordiscover_image_message", message: "登录后，别人评论你的微博，发给你的消息，都会在这里收到通知")
        } else if (self is CZDiscoverViewController) {
            visitorView.setupVisitorView("visitordiscover_image_message", message: "登录后，最新、最热微博尽在掌握，不再会与实事潮流擦肩而过")
        } else if (self is CZProfileViewController) {
            visitorView.setupVisitorView("visitordiscover_image_profile", message: "登录后，你的微博、相册、个人资料会显示在这里，展示给别人")
        }
        
        // 设置导航栏按钮
        navigationItem.leftBarButtonItem = UIBarButtonItem(title: "注册", style: UIBarButtonItemStyle.Plain, target: self, action: "vistorViewRegisterButtonClick")
        
        navigationItem.rightBarButtonItem = UIBarButtonItem(title: "登陆", style: UIBarButtonItemStyle.Plain, target: self, action: "vistorViewLoginButtonClick")
    }

    // MARK: - 懒加载
    lazy var visitorView: CZVistorView = CZVistorView()
}

// MARK: - 实现 CZVistorViewDelegate
extension CZBaseTableViewController: CZVistorViewDelegate {
    // MARK: - 实现代理方法
    func vistorViewRegisterButtonClick() {
        let networkTool = CZNetworkTool.sharedInstance
        
        print("登录界面: \(networkTool.oauthLoginUrl())")
    }
    
    func vistorViewLoginButtonClick() {
        // 跳转到授权控制器
        let oauthVC = CZOauthViewController()
        
        presentViewController(UINavigationController(rootViewController: oauthVC), animated: true, completion: nil)
    }
}